/**
 * @author: 最帅的的乐乐
 * @date: 2024-05-17 10:18 星期五
 * @motto the harder, the luckier。
 *  原地 移除所有数值等于 val 的元素，使用双指针，头尾遍历数组，如果左边==val，则把右边的移动过来，否则左指针++。
 *  Completed at @date: 2024-05-17 10:34
 */

public class _27_RemoveElement {
    public int removeElement(int[] nums, int val) {
        int left = 0;
        int right = nums.length;
        while (left < right) {
            if (nums[left] == val) {
                nums[left] = nums[right - 1];
                right--;
            } else {
                left++;
            }
        }
        return left;
    }
}
